<?php
class myLoginCheckValidator extends sfValidator
{
    public function execute(&$value, &$error)
    {
        //バリデート内での他のリクエストやユーザ情報の取得方法
        $request = sfContext::getInstance()->getRequest();
        $user = sfContext::getInstance()->getUser();

        $mailaddress = $request->getParameter("mailaddress");
        $password = $request->getParameter("password");

        $c = new Criteria;
        $c->add(MemberPeer::MAILADDRESS, $mailaddress);
        $c->add(MemberPeer::PASSWORD, $password);
        $c->add(MemberPeer::DELETE_YN, "y", Criteria::NOT_EQUAL);
        $member = MemberPeer::doSelectOne($c);


        //メールアドレスとパスワードが一致するレコードが無いなら
        if(!$member){
            $error = $this->getParameter("login_error");
            return false;
        }
        return true;

    }
}

?>